Global Software Pipelining with Iteration Preselection

نویسنده

  • David Gregg
چکیده

Software pipelining loops containing multiple paths is a very diicult problem. Loop shifting ooers the possibility of a close to optimal schedule with acceptable code growth. Deciding how often to shift each operation is diicult, and existing heuristics are rather ad hoc. We separate loop shifting from scheduling, and present new, non-greedy heuris-tics. Experimental results show that our approach yields better performance and less code growth.

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

Optimal Software Pipelining in Presence of Resource Constraints

This paper presents a new class of algorithms for loop software pipelining in presence of resource constraints. This new approach allows to generate optimal code with respect to throughput even for processors with complex resource constraints which make them hard to program even by hand. It consists of two steps: rst, we build the reservation table for the body of the software pipelined loop by...

متن کامل

Enhanced Loop Flattening for Software Pipelining of Arbitrary Loop Nests

This paper introduces and evaluates enhanced loop flattening, a compiler framework for transforming an arbitrary set of nested and sequenced loops into a single loop with additional logic to implement the control flow of the original code. Loop flattening allows conventional software pipelining algorithms to effectively pipeline nested loops. Conventional software pipelining approaches are only...

متن کامل

A Formal Model of Software Pipelining Loops with Conditions

This paper addresses the problem of parallelizing loops with conditional branches in the context of software pipelining. A new formal approach to this problem is proposed in the form of Predicated Software Pipelining (PSP) model. The PSP model represents execution of a loop with conditional branches as transitions of a finite state machine. Each node of the state machine is composed of operatio...

متن کامل

A Software Pipelining Method Based on a Hierarchical Social Algorithm

Software pipelining is a compile-time scheduling technique that overlaps successive loop iterations to achieve instruction-level parallelism. It allows us to hide memory latency by overlapping the prefetches for a future iteration with the computation of the current iteration. This paper presents an efficient algorithm for determining the iteration bound of cyclic data flow graphs and the optim...

متن کامل

Software pipelining of nested loops

This paper presents an approach to software pipelining of nested loops. While several papers have addressed software pipelining of inner loops, little work has been done in the area of extending it to nested loops. This paper solves the problem of nding the minimum iteration initiation interval (in the absence of resource constraints) for each level of a nested loop. The problem is formulated a...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

عنوان ژورنال:

دوره   شماره 

صفحات  -

تاریخ انتشار 2000